﻿' LibWowArmory
' by Ronald M. Clifford (roncli@roncli.com)
'
' This source code is released under the GNU Library General Public License (LGPL) Version 2.1.

Imports System.Collections.ObjectModel

Namespace roncliProductions.LibWowArmory.Item.Info

    ''' <summary>
    ''' A class that encapsulates item cost information
    ''' </summary>
    ''' <remarks></remarks>
    Public Class ItemCost
        Private tToken As Collection(Of TokenCost)

        ''' <summary>
        ''' The token costs of the item
        ''' </summary>
        ''' <value></value>
        ''' <returns></returns>
        ''' <remarks></remarks>
        Public ReadOnly Property Token As Collection(Of TokenCost)
            Get
                Return tToken
            End Get
        End Property

        ''' <summary>
        ''' The cost of the item in arena points
        ''' </summary>
        ''' <value></value>
        ''' <returns></returns>
        ''' <remarks></remarks>
        Public Property Arena As Integer

        ''' <summary>
        ''' The buy price of the item, in copper
        ''' </summary>
        ''' <value></value>
        ''' <returns></returns>
        ''' <remarks></remarks>
        Public Property BuyPrice As Integer

        ''' <summary>
        ''' The faction that can purchase the item
        ''' </summary>
        ''' <value></value>
        ''' <returns></returns>
        ''' <remarks></remarks>
        Public Property Faction As Enums.FactionType

        ''' <summary>
        ''' The cost of the item in honor points
        ''' </summary>
        ''' <value></value>
        ''' <returns></returns>
        ''' <remarks></remarks>
        Public Property Honor As Integer

        ''' <summary>
        ''' The sell price of the item, in copper
        ''' </summary>
        ''' <value></value>
        ''' <returns></returns>
        ''' <remarks></remarks>
        Public Property SellPrice As Integer

        ''' <summary>
        ''' A constructor to create new item cost information
        ''' </summary>
        ''' <param name="tToken"></param>
        ''' <param name="intArena"></param>
        ''' <param name="intBuyPrice"></param>
        ''' <param name="fFaction"></param>
        ''' <param name="intHonor"></param>
        ''' <param name="intSellPrice"></param>
        ''' <remarks></remarks>
        Public Sub New(ByVal tToken As Collection(Of TokenCost), ByVal intArena As Integer, ByVal intBuyPrice As Integer, ByVal fFaction As Enums.FactionType, ByVal intHonor As Integer, ByVal intSellPrice As Integer)
            Me.tToken = tToken
            Arena = intArena
            BuyPrice = intBuyPrice
            Faction = fFaction
            Honor = intHonor
            SellPrice = intSellPrice
        End Sub

    End Class

End Namespace
